Trait isotope::ast::ToAstCtx[][src]

pub trait ToAstCtx {
    fn annotate(&self, term: &TermId) -> Result<Option<Expr>, Error>;
fn var(&self, ix: u32, annot: Option<&TermId>) -> Result<Expr, Error>;
fn merge_app(&self) -> bool;
fn param_ty_lambda(&self, result: &TermId) -> bool; fn try_to_ast_in(&self, _term: &TermId) -> Option<Result<Expr, Error>> { ... }
fn cache(&self, _term: &TermId, _ast: &Expr) -> Result<(), Error> { ... }
fn param_name(&self, _result: &TermId) -> Result<Option<SmolStr>, Error> { ... } }
Expand description

A context for converting terms to ASTs

Required methods

Annotate a term in this context

Print a variable index, given an annotation

Whether to merge applications

Whether to print the parameter type of lambda functions

Provided methods

Try to convert a term to an AST in this context

Cache the result of converting a term to an AST in this context

Get the parameter name for a given result

Implementors